package cn.fl.system.transform;

import java.util.ArrayList;
import java.util.List;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.system.dto.SysFlCompInfoDTO;
import cn.fl.system.vo.SysFlCompInfoVO;

 /**
 * @Description: 融资租赁公司信息表 转换器
 * VO是客户端传递数据到服务端进行转换的数据 
 * VO转换数据变成DTO传递到服务端 
 * VO不能在服务端出现
 */
public class SysFlCompInfoVOTransform {


	/**
	 * DTO 转  VO
	 * @param po SysFlCompInfoDTO
	 * @return SysFlCompInfoVO
	 */
	public static SysFlCompInfoVO toVO(SysFlCompInfoDTO dto) {
		SysFlCompInfoVO  vo = null;
		if (dto != null) { 
			vo = new SysFlCompInfoVO();
			vo.setId(dto.getId());
			vo.setCompLvlCd(dto.getCompLvlCd());//公司级别（SYS0013）
			vo.setFulNm(dto.getFulNm());//公司全称
			vo.setShtNm(dto.getShtNm());//公司简称
			vo.setEngNm(dto.getEngNm());//英文名称
			vo.setCompPropCd(dto.getCompPropCd());//公司隶属（SYS0014）
			vo.setCompTypCd(dto.getCompTypCd());//公司性质（CST0010）
			vo.setEmpQtyCd(dto.getEmpQtyCd());//员工数量（SYS0015）
			vo.setRegDt(dto.getRegDt());//成立日期
			vo.setExpDt(dto.getExpDt());//营业期限
			vo.setBizLicNo(dto.getBizLicNo());//营业执照注册号
			vo.setTaxRegNo(dto.getTaxRegNo());//税务登记号
			vo.setOrgCode(dto.getOrgCode());//组织机构代码证
			vo.setBizScope(dto.getBizScope());//经营范围
			vo.setRegCapAmt(dto.getRegCapAmt());//注册资本（万元）
			vo.setCompTel(dto.getCompTel());//公司电话
			vo.setCompTax(dto.getCompTax());//公司传真
			vo.setRegAddr(dto.getRegAddr());//公司注册地址
			vo.setOfficeAddr(dto.getOfficeAddr());//公司办公地址
			vo.setCompRem(dto.getCompRem());//COMP_REM
			vo.setRepNm(dto.getRepNm());//法人姓名
			vo.setRepIdNum(dto.getRepIdNum());//法人身份证号
			vo.setRepOfficTel(dto.getRepOfficTel());//法人办公电话
			vo.setRepAddr(dto.getRepAddr());//法人常住地址
			vo.setRepMp(dto.getRepMp());//法人手机号
			vo.setLmNm(dto.getLmNm());//联系人姓名
			vo.setLmIdNum(dto.getLmIdNum());//LM_ID_NUM
			vo.setLmAddr(dto.getLmAddr());//联系人常住地址
			vo.setLmMp(dto.getLmMp());//联系人手机号
			vo.setIsDel(dto.getIsDel());//是否删除（1：是，0：否）
			vo.setIsValid(dto.getIsValid());//是否有效（1：是，0：否）
			
			vo.setCompLvlCdNm(dto.getCompLvlCdNm());//公司级别 对应着前端的隶属
			vo.setCompTypCdNm(dto.getCompTypCdNm());//公司性质对应着前端的公司性质
			vo.setCompPropCdNm(dto.getCompPropCdNm());//公司隶属对应着前端的公司隶属
			vo.setEmpQtyCdNm(dto.getEmpQtyCdNm());//员工数量对应着前端的公司规模
			vo.setIsValidNm(dto.getIsValidNm());//是否有效对应着前端的公司状态
			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param dto SysFlCompInfoVO
	 * @return SysFlCompInfoDTO
	 */
	public static SysFlCompInfoDTO toDTO(SysFlCompInfoVO vo) {
		SysFlCompInfoDTO dto = null;
		if (vo != null) {
			dto = new SysFlCompInfoDTO();
			dto.setId(vo.getId());
			dto.setCompLvlCd(vo.getCompLvlCd());//公司级别（SYS0013）
			dto.setFulNm(vo.getFulNm());//公司全称
			dto.setShtNm(vo.getShtNm());//公司简称
			dto.setEngNm(vo.getEngNm());//英文名称
			dto.setCompPropCd(vo.getCompPropCd());//公司隶属（SYS0014）
			dto.setCompTypCd(vo.getCompTypCd());//公司性质（CST0010）
			dto.setEmpQtyCd(vo.getEmpQtyCd());//员工数量（SYS0015）
			dto.setRegDt(vo.getRegDt());//成立日期
			dto.setExpDt(vo.getExpDt());//营业期限
			dto.setBizLicNo(vo.getBizLicNo());//营业执照注册号
			dto.setTaxRegNo(vo.getTaxRegNo());//税务登记号
			dto.setOrgCode(vo.getOrgCode());//组织机构代码证
			dto.setBizScope(vo.getBizScope());//经营范围
			dto.setRegCapAmt(vo.getRegCapAmt());//注册资本（万元）
			dto.setCompTel(vo.getCompTel());//公司电话
			dto.setCompTax(vo.getCompTax());//公司传真
			dto.setRegAddr(vo.getRegAddr());//公司注册地址
			dto.setOfficeAddr(vo.getOfficeAddr());//公司办公地址
			dto.setCompRem(vo.getCompRem());//COMP_REM
			dto.setRepNm(vo.getRepNm());//法人姓名
			dto.setRepIdNum(vo.getRepIdNum());//法人身份证号
			dto.setRepOfficTel(vo.getRepOfficTel());//法人办公电话
			dto.setRepAddr(vo.getRepAddr());//法人常住地址
			dto.setRepMp(vo.getRepMp());//法人手机号
			dto.setLmNm(vo.getLmNm());//联系人姓名
			dto.setLmIdNum(vo.getLmIdNum());//LM_ID_NUM
			dto.setLmAddr(vo.getLmAddr());//联系人常住地址
			dto.setLmMp(vo.getLmMp());//联系人手机号
			dto.setIsDel(vo.getIsDel());//是否删除（1：是，0：否）
			dto.setIsValid(vo.getIsValid());//是否有效（1：是，0：否）

			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
		}
		return dto;
	}
	
	/**
	 * DTO集合 转 VO集合
	 * @param list List<SysFlCompInfo>
	 * @return List<SysFlCompInfoDTO>
	 */
	public static List<SysFlCompInfoVO> toVOList(List<SysFlCompInfoDTO> list) {
		List<SysFlCompInfoVO>  voList = new ArrayList<SysFlCompInfoVO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (SysFlCompInfoDTO dto : list) {
				voList.add(toVO(dto));
			}
		}
		return voList;
	}
}
